define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {

    var Controller = {

        index: function () {
            var groupId = Config.groupId;
            if (groupId == 1) {
                // 初始化表格参数配置
                Table.api.init({
                    extend: {
                        index_url: 'family/questionnaire/index' + location.search,
                        add_url: 'family/questionnaire/add',
                        edit_url: 'family/questionnaire/edit',
                        del_url: 'family/questionnaire/del',
                        multi_url: 'family/questionnaire/multi',
                        import_url: 'family/questionnaire/import',
                        table: 'family_questionnaire',
                    }
                });

                var table = $("#table");

                // 初始化表格
                table.bootstrapTable({
                    url: $.fn.bootstrapTable.defaults.extend.index_url,
                    pk: 'id',
                    sortName: 'id',
                    columns: [
                        [
                            { checkbox: true },
                            { field: 'id', title: __('Id') },
                            { field: 'subject', title: __('Subject'), operate: 'LIKE', formatter: Controller.api.formatter.malfunction },
                            // {field: 'add_time', title: __('Add_time'), operate: 'LIKE'},
                            { field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate }
                        ]
                    ]
                });

                // 为表格绑定事件
                Table.api.bindevent(table);
            } else {
                Controller.api.bindevent();
            }



        },
        add: function () {
            Controller.api.bindevent();
        },
        edit: function () {
            Controller.api.bindevent();
        },
        answer: function () {
            Controller.api.bindevent();
        },
        api: {
            bindevent: function () {
                Form.api.bindevent($("form[role=form]"));
            },
            formatter: {//渲染的方法
                browser: function (value, row, index) {
                    //这里我们直接使用row的数据
                    return '<a class="btn btn-xs btn-printer_id">' + row.printer_id + '</a>';
                },
                malfunction: function (value, row, index) {
                    //这里手动构造URL
                    var malfunctionTexts = value
                    var renderedText = '';
                    var maxTextLength = 100; // 你希望显示的最大字符数

                    // 使用 <br> 标签分隔字段内容
                    if (malfunctionTexts.length > maxTextLength) {
                        var Text = malfunctionTexts.substr(0, maxTextLength) + '...';
                        renderedText += Text + '<br>';
                        console.log(Text);
                    } else {
                        renderedText += malfunctionTexts + '<br>';
                    }

                    // return renderedText;

                    //方式一,直接返回class带有addtabsit的链接,这可以方便自定义显示内容
                    return '<a class="label" style="color: #000;" title="' + value + '">' + renderedText + '</a>';

                    //方式二,直接调用Table.api.formatter.addtabs
                    // this.url = url;
                    // return Table.api.formatter.addtabs.call(this, value, row, index);
                }
            }
        }
    };
    return Controller;
});
